xen/rpi4: implement watchdog-based reset
authorStefano Stabellini <sstabellini@kernel.org>
Fri, 2 Oct 2020 20:47:17 +0000 (13:47 -0700)
committerHans van Kranenburg <hans@knorrie.org>
Sun, 11 Jul 2021 12:29:14 +0000 (14:29 +0200)
commitc31508f0a619e4c2e74b37e4c6ae5c8803827459
treed09d7ec114e714f488bd332dc3ddeb13d6a0669d
parentcb84acb5cdbed56f7d05ddce8c17177b947b88c5
xen/rpi4: implement watchdog-based reset

The preferred method to reboot RPi4 is PSCI. If it is not available,
touching the watchdog is required to be able to reboot the board.

The implementation is based on
drivers/watchdog/bcm2835_wdt.c:__bcm2835_restart in Linux v5.9-rc7.

Signed-off-by: Stefano Stabellini <stefano.stabellini@xilinx.com>
Acked-by: Julien Grall <jgrall@amazon.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Tested-by: Roman Shaposhnik <roman@zededa.com>
CC: roman@zededa.com
(cherry picked from commit 25849c8b16f2a5b7fcd0a823e80a5f1b590291f9)
xen/arch/arm/platforms/brcm-raspberry-pi.c